package com.hrm.dao.lxy;

import com.hrm.entity.Dept;
import com.hrm.entity.Employee;
import com.hrm.entity.Job;
import com.hrm.utils.PageInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author 李雪阳
 * @version 1.0
 * @date 2020/8/1  15:14
 */
public interface EmpMapper {
    /**
     * 获取全部员工列表
     *
     * @param name
     * @param page
     * @return List<Employee>
     */
    List<Employee> selectEmpList(@Param("name") String name, @Param("page") PageInfo<Employee> page);

    /**
     * 获取全部员工个数
     *
     * @param name
     * @return Integer
     */
    int selectEmpNum(@Param("name") String name);

    /**
     * 获取单个员工信息
     *
     * @param uid
     * @return Employee
     */
    Employee selectEmpById(@Param("uid") Integer uid);

    /**
     * 查找部门列表
     *
     * @return List<Dept>
     */
    List<Dept> selectDeptList();

    /**
     * 查找职位列表
     *
     * @return List<Job>
     */
    List<Job> selectJobList();

    /**
     * 增加员工
     *
     * @param emp
     * @return int
     */
    int addEmp(Employee emp);

    /**
     * 修改员工信息
     *
     * @param emp
     * @return int
     */
    int modifyEmpById(Employee emp);

    /**
     * 通过员工id删除一个员工
     *
     * @param id
     * @return int
     */
    int deleteEmpById(@Param("id") Integer id);
}
